#include<iostream>
using namespace std;


int main()
{
    int N;
    int M[100001];
    int numM[100001];
    int sumMax[100001];  //所有的和的值
    int maxtemp;  //临时最大值，最终最大值
    cin>>N;
    for(int iN = 0;iN<N;iN++)
    {
        cin>>M[iN];
    }
    numM[0] = 1;
    numM[1] = 1;
    sumMax[0] = M[0];
    sumMax[1] = M[1];

    for(int inumM=2;inumM<N;inumM++)
    {
        numM[inumM] = 1;
        maxtemp = M[inumM];
        for(int i=0;i<=inumM-2;i++)
        {
            if  (M[inumM]+sumMax[i]>maxtemp)
            {
                maxtemp = M[inumM]+sumMax[i];
            }
        }
        sumMax[inumM] = maxtemp;
        // cout<<sumMax[inumM]<<endl;
    }

    maxtemp = sumMax[0];
    for(int imax=1;imax<N;imax++)
        {
            //cout<<sumMax[imax]<<endl;
            if (sumMax[imax]>maxtemp)
            maxtemp = sumMax[imax];
        }
    cout<<maxtemp<<endl;
    return 0;
}
